home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / ewl / ewl_imenu.h < prev    next >
C/C++ Source or Header  |  2006-01-09  |  1KB  |  54 lines

  1. #ifndef __EWL_IMENU_H__
  2. #define __EWL_IMENU_H__
  3.  
  4. /**
  5.  * @file ewl_imenu.h
  6.  * @defgroup Ewl_Imenu Imenu: A Simple Internal Menu
  7.  * Defines a menu used internally. The contents on the menu are not drawn
  8.  * outside of the Evas.
  9.  *
  10.  * @{
  11.  */
  12.  
  13. /**
  14.  * @themekey /imenu/file
  15.  * @themekey /imenu/group
  16.  */
  17.  
  18. /**
  19.  * A simple internal menu, it is limited to drawing within the current evas.
  20.  */
  21. typedef struct Ewl_Imenu Ewl_Imenu;
  22.  
  23. /**
  24.  * @def EWL_IMENU(menu)
  25.  * Typecasts a pointer to an Ewl_Imenu pointer.
  26.  */
  27. #define EWL_IMENU(menu) ((Ewl_Imenu *) menu)
  28.  
  29. /**
  30.  * @struct Ewl_Imenu
  31.  * Inherits from the Ewl_Menu_Base and does not extend the structure, but
  32.  * provides policy for drawing on the current evas.
  33.  */
  34. struct Ewl_Imenu
  35. {
  36.     Ewl_Menu_Base base;
  37. };
  38.  
  39. Ewl_Widget    *ewl_imenu_new(void);
  40. int         ewl_imenu_init(Ewl_Imenu *menu);
  41.  
  42. /*
  43.  * Internally used callbacks, override at your own risk.
  44.  */
  45. void ewl_imenu_configure_cb(Ewl_Widget *w, void *ev_data, void *user_data);
  46. void ewl_imenu_expand_cb(Ewl_Widget *w, void *ev_data, void *user_data);
  47. void ewl_imenu_popup_destroy_cb(Ewl_Widget *w, void *ev, void *data);
  48.  
  49. /**
  50.  * @}
  51.  */
  52.  
  53. #endif                /* __EWL_IMENU_H__ */
  54.